In order to reproduce video data (e.g. graphic data or text data) on a tangible medium, the data may be printed via a laser printer. Furthermore, the video data may be subjected to two types of operations in order to prepare the data to be printed. Specifically, the data may be subjected to a chopping operation and a shrinking operation.
The chopping operation is used to determine whether or not a portion (e.g. a bit) of data is divided into several sections of data. As a result, the chopping operation may generate a segment of data corresponding to each of the sections. The shrinking operation is used to determine whether or not a portion (e.g. a bit) of data is shrunk and the degree to which such data is shrunk.
Furthermore, a register may be provided to store data or other information to control the chopping and shrinking operations. For example, when the bit of data is divided in accordance with the chopping operation, the bit may be divided into sections based on a bit number stored in the register. In particular, each bit of a predetermined number of bits in the register may represent an enabling state of a related section of the data signal.
However, a conventional video controller which performs chopping and shrinking operations has several disadvantages. For instance, such controller is only capable of performing either the chopping operation or the shrinking operation at any given time. As a result, the chopping operation and the shrinking operation cannot be simultaneously performed, and thus, the video controller cannot efficiently process the video data.